Portable computing devices, such as smartphones or tablet computers, have become increasingly powerful and user-friendly. Increased network connectivity has further enhanced portable computing device functionality, allowing portable computing devices to provide a wider range of functionalities and/or data. For example, portable computing devices are commonly used to retrieve, or otherwise interact with, data stored or maintained by a server, allowing a user to more frequently view, modify or otherwise interact with data on the server.
To readily provide access to data maintained by a server, a portable computing device frequently exchanges data with the server to synchronize data stored on the portable computing device and data stored on the server. Different data synchronization settings may be used by the portable computing device to exchange data with a server. For example, the portable computing device may poll the server at a regular polling interval with a request for data that transmits data to the server and/or requests data from the server. Alternatively, data may be pushed from the portable computing device to a server, or from a server to the portable computing device, at a periodic interval or responsive to a data modification.
However, various factors affect data synchronization between the portable computing device and a server, such as the type of network used by the portable computing device and the quality of the connection between the portable computing device and a network. Thus, as the portable computing device moves to different locations, synchronization of data between the portable computing device and a server may be improved or impaired based on properties of the network at the portable computing device location or the connection between the portable computing device and the network at the portable computing device location. Accordingly, changes in portable computing device location affect exchange of data between the portable computing device location and the server, which affects user interaction with data via the portable computing device.
Skilled artisans will appreciate that elements in the Figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the Figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing the specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.